#ifndef PLAYSCENE_H
#define PLAYSCENE_H
#include "terkexi.h"
#include <QTimer>
#include "map.h"
#include <QWidget>
#include "coin.h"
#include <QLabel>

class PlayScene : public QWidget
{
    Q_OBJECT
public:
    explicit PlayScene(QWidget *parent = nullptr);

    //启动游戏
    void playGame();

    //更新所有游戏中元素的坐标
    void updatePosition();

    //绘图事件
    void paintEvent(QPaintEvent *);

    //地图对象
    Map m_map;
    Ground m_ground;

    //设置定时器用于循环
    QTimer m_Timer;

    //特尔克西
    Terkexi m_hero;

    //金币出场
    void coinToScene();

    //金币数组
    Coin m_coins[COIN_NUM];

    //金币出场间隔记录
    int m_recorder;

    //吃到的金币数
    int Coin_Score;

    //显示当前金币数
    QLabel * Coin_Label = new QLabel;

    //键盘控制
    void keyPressEvent(QKeyEvent *event);
    void keyReleaseEvent(QKeyEvent *event);

    //人物水平移动
    void handleHorizontalMovement();
    //人物垂直移动
    void handleVerticalMovement();

    //碰撞检测
    void checkCollisions();

signals:
};

#endif // PLAYSCENE_H
